﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using InterfazPublica;
using Dominio.Entidades;
using Dominio.Excepciones;

namespace Dominio.Commands
{
    public class ApuestaCommand:ICommand
    {
        public Juegos Juego { get; set; }

        public IJuegos IJuego { get; set; }

        public ApuestaCommand(IJuegos IJuego, Juegos Juego) 
        {
            this.IJuego = IJuego;
            this.Juego = Juego;
        }

        public DatosApuesta Execute() 
        {
            DatosApuesta DatosApuesta = IJuego.RealizarApuesta();
            if (DatosApuesta == null) 
            {
                throw (new NullApuestaException());
            }
           
            return DatosApuesta;
        }

        public override string ToString() 
        {
            return this.Juego.Descripcion + " - Apuesta: " + this.IJuego.DatosFormulario().valores;
        }
    }
}
